package com.woniuxy.daos;

import com.woniuxy.entitys.Permission;
import org.apache.ibatis.annotations.Param;

import java.util.ArrayList;
import java.util.List;

public interface PermissionDao {
    int deleteByPrimaryKey(Integer per_id);

    int insert(Permission record);

    int insertSelective(Permission record);

    Permission selectByPrimaryKey(Integer per_id);

    int updateByPrimaryKeySelective(Permission record);

    int updateByPrimaryKey(Permission record);

    //根据用户角色获取权限
    List<Permission> getPers(@Param("role_id") Integer role_id, @Param("pid")Integer pid);

    //获取所有权限
    List<Permission> getAllPers(Integer per_pid);

    //根据role_id获取已有权限id
    List<Integer> selectPerIdsByRid(Integer role_id);

    // 保存分配权限
    Integer insertPersByRid(Integer role_id, ArrayList<Integer> perIds);

    //删除已有权限
    Integer deletePersByRid(Integer role_id);

    //获取所有权限及children
    List<Permission> getPersList(Integer per_pid);

    //获取所有菜单权限
    List<Permission> getMenuListWithoutRid( );


    //修改权限状态
    Integer updPerById(Integer per_id, String per_remark);

    //根据查询语句查询相应权限
    List<Permission> searchPers(String value);
}